package com.qaml.mes.device.dto.eqp;

import com.earth.page.PageRequest;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.Valid;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import java.io.Serializable;
import java.util.List;

/**
 * @Description: 检保信息
 * @Version: 1.0
 */
@Data
public class CheckUpkeepInfoDTO implements Serializable {

    private static final long serialVersionUID = -3953038236732233566L;

    /**
     * 检保信息id
     */
    @ApiModelProperty(value = "检保信息id")
    private String id;

    /**
     * 检保项目编号
     */
    @ApiModelProperty(value = "检保项目编号")
    String checkUpkeepId;

    /**
     * 设备id
     */
    @ApiModelProperty(value = "设备id")
    @NotBlank
    String eqpId;

    /**
     * 设备名称
     */
    @ApiModelProperty(value = "设备名称")
    String eqpName;

    /**
     * 设备编码
     */
    @ApiModelProperty(value = "设备编码")
    String eqpCode;

    /**
     * 线体
     */
    @ApiModelProperty(value = "线体")
    String lineBody;

    /**
     * 检保类型
     */
    @ApiModelProperty(value = "检保类型")
    String type;

    /**
     * 检保周期
     */
    @ApiModelProperty(value = "检保周期")
    String cycle;

    /**
     * 启用状态  1 启动 0 禁用
     */
    @ApiModelProperty(value = "启用状态")
    private Integer status;
    /**
     * 检保信息条目
     */
    @ApiModelProperty(value = "检保信息条目")
    private List<CheckUpkeepItemDTO> checkUpkeepItemDTOList;

    /**
     * 检保人员信息
     * TODO
     */
    @ApiModelProperty(value = "检保人员信息")
    @Valid
    @NotEmpty(message = "检保人员不能为空")
    private List<CheckUpkeepUserDTO> checkUpkeepUserDTOList;

    /**
     * 复核人员信息
     */
    @ApiModelProperty(value = "复核人员信息")
    @Valid
    @NotEmpty(message = "复核人员不能为空")
    private List<CheckUpkeepUserDTO> recheckCheckUpkeepDTOList;

    /**
     * 审核人员信息
     * TODO
     */
    @ApiModelProperty(value = "审核人员信息")
    @Valid
    @NotEmpty(message = "审核人员不能为空")
    private List<CheckUpkeepUserDTO> archivistCheckUpkeepUserDTOList;
}